home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fritz: All Fritz
/
All Fritz.zip
/
All Fritz
/
FILES
/
PROGBLER
/
A86V318C.LZH
/
A15.DOC
< prev
next >
Wrap
Text File
|
1988-07-22
|
6KB
|
172 lines
CHAPTER 15 RELEASE HISTORY OF A86
Virtually all releases of A86 include bug fixes. If I don't say
anything about a release, then it was essentially only bug fixes.
V2.10 June 1986. Initial public release of the MSDOS version of
A86. The last previous version ran under the Xenix
operating system on the Altos series of computers.
Upgrades from that previous version included:
* cleaning up the command invocation to allow default
output files
* insertion of full error messages, not just number codes
* automatic removal of error messages upon reassembly
* addition of features for compatibility with Microsoft's
V2.11 June 1986. Added RADIX command.
V2.12 Test release for Alan Tschetter and Charlotte Wood
V2.13 July 1986. Reduced memory requirements.
V2.15 August 1986. Implemented COMMENT directive for
compatibility; added floating point instruction set and DQ
and DT directives.
V2.16 August 1986. Made internal changes to accommodate forward
referencing in D86's patch-memory mode.
V2.18 November 1986.
V2.90 March 1987. Test release for .OBJ support.
V3.00 April 1987. Major upgrade:
* added support for linkable .OBJ files
* added pagination and indexing to manual
* added long constants and floating-point constants
* added A86LIB library tool and A86 support
* added ability to forward-reference variables
* added ability to add to and index forward references
* added 286 protected-mode instructions
* added NEC-specific instructions
* added option not to insert errors in source
* added option for long forward JMP for local labels
* added switch for default decimal
15-2
* added "=" equate compatibility feature
* added double-quoted strings compatibility feature
* underscores allowed within numbers
* leading $ and ? allowed in symbols, for compatibility
* parentheses no longer required for most DUP right
operands
* less type checking for pointer arithmetic compatibility
* numerous minor bug fixes
V3.01 April 1987. Minor enhancements:
* original file had been renamed to no extension, not OLD
* some forward reference and OBJ operands didn't work
* file name reporting in undefineds-list was sometimes off
* wider display columns, for longer LIB source file names
* segment overrides outlawed in 3-operand MOV
* forward references outlawed in numeric-operand INC/DEC
* add support for near jumps between OBJ segments
* add "S" suppress-symtab and "C" case-sensitivity
switches
V3.02 May 1987.
V3.03 May 1987.
V3.04 May 1987.
V3.05 June 1987. Added the following features for MASM
compatibility:
* recognition of SEGMENT AT in non-OBJ mode
* ignore END directive in non-OBJ mode
V3.07 July 1987. Added features necessary for Turbo C support
(+c, +f, +F switches; ignore DGROUP:). Generalized the
environment variable to include macro files. Added the
ampersand feature. Made = compatible with MASM.
V3.08 July 1987.
15-3
V3.09 August 1987. Legalized MOV segreg,immediate. Duplicated
MASM functionality for case sensitive mode (A86's +C
switch). Added ability to make aliasing EQU to an
external name. Made FAKE.EXE into an honest EXE file,
instead of a COM masquerading as EXE.
V3.10 September 1987. Added a printed version of the manual.
Added +c switch, reinstating case sensitivity during
assembly, but this time without sensitivity in built-in
symbols.
V3.11 November 1987. Added the SEG operator for compatibility
with Turbo C, and made it possible to define relocatable
segments called CODE, DATA, or STACK, for compatibility
with Turbo Pascal.
V3.12 February 1988. Added features:
* Changed the format of SYM files, so that they are much
smaller yet hold more information. This allows D86,
XREF, and EXMAC to work better with A86.
* A86 now allows an aribtrary expression to appear in a
conditional assembly (#IF) directive.
* Added macro features, for compatibility: #V value
operator, #S size operator, #N number operator, #EX exit
directive, string comparison of operands, and large
operand numbers (up to 255).
* To overcome a Turbo C bug, allowed embedded blanks in
symbols declared via an EXTRN directive. I dropped this
feature in V3.13; see below.
V3.13 March 1988. Made memory management more flexible, to
allow A86 to run with less available memory. Added a
small feature to ease Turbo C compatibility: if there is a
segment override to a forward refernce, the reference is
assumed to be a variable, not an immediate value. This
eliminates the need for the EXTRN kluge of the above
paragraph, so I dropped that kluge.
V3.14 March 1988.
V3.15 May 1988. Allowed up-arrow in place of equals-sign in
invocation equates. Allowed MOV mem,mem and XCHG of a
variety of new forms, generating sequences of instructions
to implement the unavailable forms.
V3.17 June 1988.
V3.18 July 1988. For compatibility: allowed OFFSET segname, and
implicitly converted a constant with a segment override
into a memory type.